L’algorithmique et la programmation - 2de

Les instructions séquentielles, conditionnelles et itératives

Exercice 1 : Appel de fonction Python avec une instruction conditionnelle if sans else

On considère la fonction Python suivante :

def mystere(n):
    if n == 7 :
        n =  n - 1
    return n
Que renvoie l'appel de la fonction mystere(7) ?
Que renvoie l'appel de la fonction mystere(8) ?

Exercice 2 : Instruction conditionnelle if else - Python

On considère la fonction ci-dessous :

def mystere(n):
    if n != 2:
        return n % 1
    else:
        return n // 6
Quelle est la valeur renvoyée par mystere(5)?
Quelle est la valeur renvoyée parmystere(2)?

Exercice 3 : Instruction conditionnelle if elif else - Python

On considère la fonction ci-dessous :

def mystere(n):
    if n > 7:
        return n % 9
    elif n < -1:
        return n - 4
    else:
        return n + 3
Quelle est la valeur renvoyée par mystere(12)?
Quelle est la valeur renvoyée parmystere(-6)?

Exercice 4 : Dichotomie vers racine de polynôme 2nd degré (inspiré par Bac S Asie 2015)

On considère l'algorithme ci-dessous :

\(a\)\(2\)
\(b\)\(3\)
Tant que \(b - a \gt 0,3\) :
\(x\)\(\dfrac{a + b}{2}\)
Si \(\operatorname{f}{\left (a \right )} \times \operatorname{f}{\left (x \right )} \gt 0\) :
\(a\)\(x\)
Sinon
\(b\)\(x\)

Si \(f(x) = -13 + 3x^{2}\), quel est le resultat de \(\dfrac{a + b}{2}\) ?

Exercice 5 : PGCD - Algorithme d'Euclide (inspiré par Bac S Antilles-Guyane 2015 pour spé)

Pour deux entiers naturels non nuls \(f\) et \(t\), on note \(\operatorname{r}{\left (f,t \right )}\) le reste dans la division euclidienne de \(f\) et \(t\). On considère l'algorithme suivant :

   \(e\)\(\operatorname{r}{\left (f,t \right )}\)
   Tant que \(e \neq 0\) :
   \(f\)\(t\)
   \(t\)\(e\)
   \(e\)\(\operatorname{r}{\left (f,t \right )}\)
   Afficher « \(t\) »
[A]Si ??? :
   Afficher « \(f\) et \(t\) sont premiers entre eux »

Faire fonctionner cet algorithme avec \(f=33\) et \(t=19\) en indiquant les valeurs de \(f\), \(t\) et \(e\) à chaque étape.

{"data": [["33", "?", "?", "?", "?"], ["19", "?", "?", "?", "?"], ["?", "?", "?", "?", "?"]], "header_left": ["f", "t", "e"]}

Cet algorithme donne en sortie le PGCD des entiers naturels non nuls \(f\) et \(t\). Par quelle expression doit on compléter la ligne [A] pour qu’il indique si deux entiers naturels non nuls \(f\) et \(t\) sont premiers entre eux ou non.

False